如何求空间内任意两个包围框的IoU(交并比)? 您所在的位置:网站首页 python 计算iou 如何求空间内任意两个包围框的IoU(交并比)?

如何求空间内任意两个包围框的IoU(交并比)?

#如何求空间内任意两个包围框的IoU(交并比)?| 来源: 网络整理| 查看: 265

如图所示的空间内的两个obb,如何求它们的交并比?

img

采用以下方法求解,发现结果并不对(可能以下方法求oobb是对的):

def naive_iou(box1,box2): ''' 3D IoU计算 box表示形式:[x1,y1,z1,x2,y2,z2] 分别是两对角点的坐标 ''' in_w = min(box1[3],box2[3]) - max(box1[0],box2[0]) in_l = min(box1[4],box2[4]) - max(box1[1],box2[1]) in_h = min(box1[5],box2[5]) - max(box1[2],box2[2]) inter = 0 if in_w < 0 or in_l < 0 or in_h < 0 else in_w * in_l * in_h union = (box1[3] - box1[0]) * (box1[4] - box1[1]) * (box1[5] - box1[2]) + (box2[3] - box2[0]) * (box2[4] - box2[1]) * (box2[5] - box2[2]) - inter iou = inter / union return iou


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有